#pragma once

#include <string>
#include <vector>
#include <glut.h>

using namespace std;

class TextureHandler
{
public:
	TextureHandler(void);
	~TextureHandler(void);

	string	m_filename;
	int		m_pixel_type;		// The data type of the pixel data.
								// The following symbolic values are accepted:
								// GL_UNSIGNED_BYTE, GL_BYTE, GL_BITMAP, GL_UNSIGNED_SHORT,
								// GL_SHORT, GL_UNSIGNED_INT, GL_INT, and GL_FLOAT.
	int				m_pixel_format;
	unsigned char	m_pixels;
	string			m_ext;

	int				Load(char *filename, int texType=0);
	int				Load_disp(vector<char*> filenames);

	int				img_width;
	int				img_height;

	GLuint	ogl_id;
};
